package com.gollum.web.domain;

import cn.hutool.core.util.NumberUtil;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * 内存信息
 *
 * @author Herther
 * @createTime 2022年10月20日 22:51:00
 * @since 1.0.0
 */
@Accessors(chain = true)
@Setter
@ToString
public class Memory {

    /**
     * 内存总量
     */
    private double total;

    /**
     * 已用内存
     */
    private double used;

    /**
     * 剩余内存
     */
    private double free;



    public double getTotal()
    {
        return NumberUtil.div(total, (1024 * 1024 * 1024), 2);
    }

    public double getUsed()
    {
        return NumberUtil.div(used, (1024 * 1024 * 1024), 2);
    }

    public double getFree()
    {
        return NumberUtil.div(free, (1024 * 1024 * 1024), 2);
    }

    public double getUsage()
    {
        return NumberUtil.div(used, total, 2);
    }

    public double getOver(){
        return NumberUtil.div(used, total, 2);
    }
}
